'''
Created on 17/10/2011

@author: Daniel
'''
import tkMessageBox

class Endereco:
    def __init__(self):
        self.nome_da_rua = None
        self.numero = None
        self.cep = None
        self.complemento = None
        self.bairro = None
        self.cidade = None
        self.estado = None
        
    def set_nome_da_rua(self, novo_nome_da_rua):
        self.nome_da_rua = novo_nome_da_rua
    def set_numero(self, novo_numero):
        self.numero = novo_numero
    def set_cep(self, novo_cep):
        self.cep = novo_cep 
    def set_complemento(self, novo_complemento):
        self.complemento = novo_complemento
    def set_bairro(self, novo_bairro):
        self.bairro = novo_bairro
    def set_cidade(self, nova_cidade):
        self.cidade = nova_cidade
    def set_estado(self, novo_estado):
        self.estado = novo_estado
        
    def get_nome_da_rua(self):
        return self.nome_da_rua
    def get_numero(self):
        return self.numero
    def get_cep(self):
        return self.cep
    def get_complemento(self):
        return self.complemento
    def get_bairro(self):
        return self.bairro
    def get_cidade(self):
        return self.cidade
    def get_estado(self):
        return self.estado
    
    def valido(self):
        #Verifica se o cep foi fornecido corretamente
        if not self.cep:
            pass
        else:             
            try:
                self.cep_inteiro = int(self.cep)
                if len(self.cep) > 8:
                    tkMessageBox.showwarning('Mensagem do sistema', 'CEP invalido, o campo CEP deve conter no maximo 8 caracteres.')
                    self.ctrl_cep = False
                else:
                    self.ctrl_cep = True
            except:
                tkMessageBox.showwarning('Mensagem do sistema', 'CEP invalido, apenas numeros sao permitidos nesse campo.')
                self.ctrl_cep = False
        
        #verifica se as informacoes sao validas e retorna verdadeiro, caso contrario retorna falso   
        if self.ctrl_cep:
            return True
        else:
            return False
        
